package com.example.tests;

import static org.hamcrest.Matchers.equalTo;
import static org.junit.Assert.assertThat;
import java.util.Random;
import org.testng.annotations.Test;
import com.example.utils.SortedListOf;

public class ContactRemovalTests extends TestBase {
	 @Test
	  public void ContactRemoval() throws Exception {
		
	 	// save old state
		SortedListOf<ContactData> oldList = app.getContactHelper().getDbContacts();

	    Random rnd = new Random();
	    int index = rnd.nextInt(oldList.size());
	    
	    //action
	    app.getContactHelper().deleteContact(index);
	    
	    //save new state
	    SortedListOf<ContactData> newList = app.getContactHelper().getUiFullContacts();
	    
	    //compare states  
	    assertThat(newList, equalTo(oldList.without(index)));
	 }
}
